﻿using System;
using UtfprLibrary.Exceptions;

namespace UtfprLibrary.EntityFramework.Exceptions {
    /// <summary>
    /// Principal exceção da camada que expõe funcionalidades para o EntityFramework
    /// </summary>
    public abstract class UtfprEntityFrameworkExceptionBase : UtfprExceptionBase {
        /// <summary>
        /// Construtor padrão
        /// </summary>
        public UtfprEntityFrameworkExceptionBase() { }

        /// <summary>
        /// Contrutor que expõe a customização da mensagem de erro
        /// </summary>
        /// <param name="errorMessage">Mensagem de erro</param>
        public UtfprEntityFrameworkExceptionBase(string errorMessage)
            : base(errorMessage) { }

        /// <summary>
        /// Contrutor que expõe a customização da mensagem de erro e da exceção base
        /// </summary>
        /// <param name="errorMessage">Mensagem de erro</param>
        /// <param name="innerException">Exceção base</param>
        public UtfprEntityFrameworkExceptionBase(string errorMessage, Exception innerException)
            : base(errorMessage, innerException) { }
    }
}
